# -*- coding:utf-8 -*-
# @Time : 2021/10/22 9:25
# @Author : zvs
# @File : rw_visual
# @Project : untitled
import matplotlib.pyplot as plt
from random_walk import RandomWalk

while True:
    #创建一个RandomWalk实例。
    rw = RandomWalk(50000)
    rw.fill_walk()
    #将所有的点都绘制出来。
    plt.style.use('classic')
    plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
    plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号

    fig, ax = plt.subplots(figsize=(15, 9))
    point_numbers = range(rw.num_points)
    ax.scatter(rw.x_values, rw.y_values, c=point_numbers, cmap=plt.cm.Blues,
               edgecolors='none', s=1)

    ax.set_title('随机漫步', fontsize=24)
    ax.set_xlabel('x坐标', fontsize=14)
    ax.set_ylabel('y坐标', fontsize=14)

    #隐藏坐标轴。
    ax.get_xaxis().set_visible(False)
    ax.get_yaxis().set_visible(False)

    #突出起点和终点。
    ax.scatter(0, 0, c='Green', s=100)
    ax.scatter(rw.x_values[-1], rw.y_values[-1], c='red', s=100)

    plt.show()

    keep_running = input('Make another walk?(y/n):')
    if keep_running == 'n':
        break